package com.sy.utils;

import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;

/**
 * @className: BCryptUtils
 * @author: Mr.Liu
 * @date: 2025/10/29 15:04
 * @Version: 1.0
 * @description:密码的加密和校验匹配工具类
 */
public class BCryptUtils {
    // 工作因子（4-31，默认10，值越大越安全但性能消耗越高）
    private static final BCryptPasswordEncoder encoder = new BCryptPasswordEncoder(12);

    // 加密密码
    public static String hashPassword(String password) {
        return encoder.encode(password);
    }

    // 验证密码
    public static boolean verifyPassword(String rawPassword, String encodedPassword) {
        return encoder.matches(rawPassword, encodedPassword);
    }
}
